平均年薪竟然仅10万!Python+BI爬取上万条数据,原来数据分析师并不光鲜亮丽!
似乎一提起数据分析师,大家心中想到的就是工作轻松、入门简单、工资优厚,不少人甚至选择裸辞,就为了能赶上数据分析的末班车,然而事实上真的如此吗?
数据分析还是风口吗?
站在风口上,猪都能飞起来。
很多人把这句话奉为圭臬,觉得数据分析就是一个风口职业。
然而被吹飞的永远只能是少数,大部分人不仅连汤都喝不到,甚至连碗边子都碰不到,等到自己清醒过来,眼前只有一片的蓝海。
数据分析岗位的蓝海效应虽然没有这么严重,但是也绝对没有网上鼓吹的那么光鲜亮丽,低薪低岗、996、压力宅的标签同样也适用于数据分析。
之前从职友集网上看到一份关于数据分析师的岗位薪资调查,54%的岗位薪资只有不到1.5w,平均月薪只有1.2w。
看上去似乎还不错,但是这个图中恰恰犯了数据分析最大的一个毛病:以“全”概“偏”
也就是用总体的数据特征来掩盖某些数据细节,为了帮助大家对数据分析岗位有一个全面深入的判断,我决定自己去挖掘网上的招聘数据,真正侧写出数据分析岗位的真实情况。
Python爬取
网站就选择智联招聘了,这个网站的网页结构比较简单,不需要设置模拟点击,而且数据来源比较准备,基本不需要进行数据清洗。
首先,进入智联招聘官网搜索“数据分析”相关的岗位,结果大概有上千条:
然后看一下这个界面的网页结构,按F12查看网页源码,点击network
可以看到一些Ajax请求, 找到XHR文件,点击可以看到网页的一些信息
了解了网页结构,下面就可以开始写爬虫语言了:
首先构造网址请求,在Header中有一个Request URL,我们点击Preview,可以看到我们所需要的信息就存在result中,这信息基本是json格式,有些是列表;
下面就可以写爬虫了,步骤的话这里不详细讲了,下面是部分截图,完整的源代码可以在后台回复”岗位“获得!
最终爬取的数据表如下所示(经过了一些简单的初步清洗和加工):
BI分析
有了数据之后,我们就要按照数据分析的流程进行”数据准备-数据清洗-数据加工-数据可视化“的工作,其实对于数据分析来说,这个过程完全可以放在BI工具中进行实现,比如FineBI、Tableau中,比如这里我们选择FineBI进行展示。
FineBI属于自助数据分析工具,它的原理也比较简单,就是通过链接数据来源进行数据源的准备,然后通过创建自助数据集的方式对数据表进行编辑加工,这样可以避免破坏原有的数据表,最后通过可视化仪表板的方式对数据进行动态展示。
首先,我们打开FineBI的主页面,在主页面左侧下方有一个加号标志的按钮,代表着”创建数据“,这里我们可以将数据上传到平台中,比如Excel表、SQL表、数据库表等。
这里我们将Excel表导入到业务包中:
当然FineBI也是可以直接连接数据库的,比如Oracle等,这里自然我们不需要数据库的连接。
将数据导入之后,我们就要对数据进行编辑和加工,但是为了不破坏源表,我们可以选择新增加一个自助数据集,也就是仅供自己使用的数据集(这个功能在公司业务里比较重要),然后就可以将导入的数据表中的所有指标全部添加:
下一步,我们就可以在自助数据集中对数据进行加工处理了,比如我们新增一列,选择分组汇总功能,将数据按照岗位进行分组:
首先我们计算一些每个岗位的平均薪资,因为数据表中只有最高薪资和最低薪资,因此这里我们选择新增一列,使用公式/函数功能,平均薪资的计算公式也比较简单:
平均薪资 = (最低薪资+最高薪资)/2
同样的,我们再计算出岗位的年薪,数据分析岗位一般都是年薪值,一般是12薪、13薪,所以计算公式也比较简单:
平均年薪 = 平均薪资 * 年薪数
得到了这两个数据,我们的数据也就基本上处理好了,下一步就要进行可视化操作了,点击数据界面右上角的”创建组件“,命名为”数据分析岗位“,即可进入可视化界面。
在这个界面里我们可以直接拖动指标到横、纵坐标轴,然后选择对应的图表类型,如折线图、散点图、次云图等即可,比如:
当然数据可视化也是一门学问,在FineBI里也可以对数据进行筛选、过滤、快速计算等功能,具体的大家可以自己尝试一下,最终我制作出了下面的仪表板图:
结果分析
1、不同城市的平均薪资
从城市分布上看,大部分数据分析岗位都集中于全国的一线、二线城市,但这些城市的薪资差异也是很大的:
北上深杭四个城市独领风骚,平均月薪全都超过了2w,广州、厦门紧跟其后,平均月薪也有1.8w左右;
而后面的城市岗位薪资都不属于很高的水平,数据表中被统计的几十个城市中,数据分析岗位平均薪资超过1w的一共只有9个城市,可以说非常惨淡。
2、不同城市的平均年薪
虽然月薪情况不如人意,那么年薪情况会不会好一点呢?
结果显示与月薪水平基本是保持一致的,北京一骑绝尘,而后面的城市增长乏力,全国排名第10的青岛数据分析岗位平均年薪仅12w,税后也只有10w左右;
3、全国的数分岗位分布
数据分析岗位还不属于传统意义上的职能岗位,因此整体上还是以京津塘、长三角和珠三角为主要的分布区域。
其他的也只有诸如成都、武汉、郑州等省会城市分布会多一些,其他三、四线城市分布比较稀缺;
4、不同行业的需求量
数据分析是十分看重行业的,从结果上看,互联网行业是数据分析岗位最多的,其次也是IT、软件、电商等领域较多,岗位的需求量一方面也代表着竞争的激烈程度。
5、不同行业的待遇
结果显示,互联网行业的年薪待遇是最高的,但是计算机软件的需求量虽然排名第二,但是薪资待遇却不如移动互联网,这也说明移动互联网现在正处于行业的上升期,相比之下是大家选择的不错选择。
6、年薪前20的公司
值得注意的是,年薪排名靠前的公司中除了腾讯、华为、网易、京东、阿里这种大厂,BOSS直聘的岗位待遇也非常的高,此外还有包括货拉拉、雅乐集团这种非大厂的待遇也很高,这应该出乎很多人的预料。
除此之外,还有非常多的有趣结论没有写出来,剩下的大家可以自己在FineBI中用数据做一次分析,体会数据分析流程的同时,对数据分析岗位有准确的认知。
FineBI的个人版免费下载链接,大家可以点击左下角“阅读原文”获得!
相关的数据和python源代码,大家可以在公众号后台回复“岗位”获得!